﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using UAXInversionesWeb.logicaNegocio;

namespace UAXInversionesWeb.operario
{
    public partial class TramitarCompraAcciones : System.Web.UI.Page
    {
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            if (HttpContext.Current.Session["identificador"] != null)
            {
                Cotizaciones[] coti = Proxy.getCotizaciones();

                empresasCotizantes.Items.Clear();
                for (int i = 0; i < coti.Length; i++)
                {
                    empresasCotizantes.Items.Add(new Telerik.Web.UI.RadComboBoxItem(coti[i].getAcronimo()));
                }
            }
        }
        
        protected void Page_Load(object sender, EventArgs e)
        {
            
        }

        protected void tramitarCompra_Click(object sender, EventArgs e)
        {
            int idcliente = 0;

            if (Int32.TryParse(idCliente.Text, out idcliente))
            {
                if (Proxy.checkIdCliente(idcliente))
                {
                    int aComprar = Int32.Parse(numAcciones.Text);

                    // vemos si se ha especificado un valor por acción
                    double valorP = 0.0;
                    if (valorAcciones.Text != "")
                    {
                        valorP = double.Parse(valorAcciones.Text);
                    }

                    // se ejecuta la compra
                    string result = Proxy.comprarAcciones(idcliente, empresasCotizantes.SelectedItem.Text, aComprar, valorP);

                    if (result == "")
                    {
                        if (valorAcciones.Text == "")
                        {
                            Response.Write("<script>alert('Compra por lo mejor: " + aComprar + " acciones de " + empresasCotizantes.SelectedValue + " compradas.')</script>");
                        }
                        else
                        {
                            Response.Write("<script>alert('Compra coste predefinido (" + valorP.ToString("N") + " € por acción): " + aComprar + " acciones de " + empresasCotizantes.SelectedValue + " en espera de ser compradas.')</script>");
                        }
                        valorAcciones.Text = "";
                        numAcciones.Text = "";
                        empresasCotizantes.SelectedIndex = 0;
                    }
                    else
                    {
                        Response.Write("<script>alert('ERROR: " + result + "')</script>");
                    }
                }
                else
                {
                    Response.Write("<script>alert('Por favor, introduzca un id de cliente válido.')</script>");
                }
            }
            else
            {
                Response.Write("<script>alert('El id de cliente ha de ser numérico.')</script>");
            }
        }
    }
}
